Commonly-used conventional methods for controlling a motor include a V/F control which involves outputting a voltage corresponding to a command frequency, thereby keeping a motor magnetic flux constant, and a vector control which involves decomposing an inverter output current into an excitation current and a torque current, and controlling the excitation voltage and the torque voltage so as to generate a motor current which is commensurate with a load.
The V/F control does not require a high-speed computation and can control a motor with a simple construction. However, the V/F control is poor in feedback information, and therefore high-efficiency control adapted for characteristics of each individual motor cannot be expected. Furthermore, since the V/F control does not detect a position of a motor rotor, a rotor of a synchronous motor can lose synchronism.
A sensorless vector control is a control technique which can prevent a synchronous motor from losing synchronism and can control the synchronous motor without using an expensive position sensor (see patent document 1). FIG. 19 shows a control block diagram illustrating the sensorless vector control. Three-phase currents Iu, Iv, Iw, detected by a current detector 12, are sent to a three-to-two phase transformation section 17, where the three-phase currents Iu, Iv, Iw on a stationary coordinate system are transformed into two-phase currents on the stationary coordinate system. The two-phase currents on the stationary coordinate system are sent to a stationary-to-rotational coordinate transformation section 18, where the two-phase currents are transformed, based on a phase θ, into two-phase currents on a rotating coordinate system, i.e., a magnetization current Im and a torque current It.
The torque current It and the magnetization current Im are sent to a torque-voltage control section 21 and a magnetization-voltage control section 22, respectively. A torque-current command value It* is inputted from a target-torque-current determination section 24 into the torque-voltage control section 21. The torque-voltage control section 21 performs a PI calculation such that a deviation between the torque-current command value It* and a present torque current It becomes 0, thereby determining a torque-voltage command value Vt*. The target-torque-current determination section 24 is a velocity controller, and performs a PI calculation to determine the torque-current command value It* which is such that a deviation between an angular-velocity command value ω*, inputted from an outside of a vector controller 11, and a present angular velocity ω of a motor M becomes zero.
A magnetization-current command value Im* is inputted from a target-magnetization-current determination section 26 into the magnetization-voltage control section 22. The magnetization-voltage control section 22 performs a PI calculation such that a deviation between the magnetization-current command value Im* and the present magnetization current Im becomes 0, thereby determining a magnetization-voltage command value Vm*. A target-magnetization-current determination section 26 determines, by a PI calculation, a magnetization-current command value Im* which is such that a deviation between a target-output-voltage value Vout*, which is sent from a target-output-voltage determination section 27, and a calculated value Vout of the present output voltage becomes zero.
The present output voltage Vout of the inverter 10 is determined by an output voltage calculator 30 from the torque-voltage command value Vt* and the magnetization-voltage command value Vm*. The torque-voltage command value Vt* and the magnetization-voltage command value Vm* are sent to a velocity calculator 31, where the present angular velocity ω of a rotor is determined. This angular velocity ω is inputted into the target-torque-current determination section 24, the target-output-voltage determination section 27, and an integrator 33. The integrator 33 integrates the angular velocity ω to determine the phase θ of the rotor. The phase θ is inputted into the stationary-to-rotational coordinate transformation section 18 and a rotational-to-stationary coordinate transformation section 35.
The magnetization-voltage command value Vm* and the torque-voltage command value Vt* are inputted into the rotational-to-stationary coordinate transformation section 35, where the magnetization-voltage command value Vm* and the torque-voltage command value Vt* on a rotating coordinate system are transformed, based on the phase θ, into a torque-voltage command value and a magnetization-voltage command value on a stationary coordinate system. Further, the torque-voltage command value and the magnetization-voltage command value on the stationary coordinate system are transformed by a two-to-three phase transformation section 36 into voltage command values Vu*, Vv*, Vw* of three phases (i.e., u-phase, v-phase, w-phase). As described above, the inverter 10 generates a voltage in accordance with the voltage command values Vu*, Vv*, Vw*.
The sensorless vector control illustrated in FIG. 19 is a control method which estimates a position of a rotor from a feedback motor current, without using a position sensor.
However, in the above-described sensorless vector control, the magnetization-voltage control section 22, which is a PI controller, calculates the value Vm*, which is used in the velocity calculator 31, which is another PI controller, for calculating the angular velocity ω in such a manner that the value Vm* becomes 0. Accordingly, the control by the magnetization-voltage control section 22 interferes with the control by the velocity calculator 31, making it difficult to perform stable control. Specifically, the value Vm*, which is calculated by the magnetization-voltage control section 22 in order to make zero (0) the deviation between the magnetization-current command value Im* and the present magnetization current Im, is inputted as a control object into the velocity calculator 31. Therefore, it is difficult to calculate a stable gain value.